# Libraries
if (!require(tidyverse)) install.packages('tidyverse', repos='http://cran.us.r-project.org'); library(tidyverse)
## Loading required package: tidyverse
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.6 v purrr 0.3.4
## v tibble 3.1.7 v dplyr 1.0.9
## v tidyr 1.2.0 v stringr 1.4.0
## v readr 2.1.2 v forcats 0.5.1
## Warning: package 'ggplot2' was built under R version 4.1.3
## Warning: package 'tibble' was built under R version 4.1.3
## Warning: package 'tidyr' was built under R version 4.1.3
## Warning: package 'readr' was built under R version 4.1.3
## Warning: package 'dplyr' was built under R version 4.1.3
## Warning: package 'forcats' was built under R version 4.1.2
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
if (!require(viridis)) install.packages('viridis', repos='http://cran.us.r-project.org'); library(viridis)
## Loading required package: viridis
## Warning: package 'viridis' was built under R version 4.1.2
## Loading required package: viridisLite
if (!require(patchwork)) install.packages('patchwork', repos='http://cran.us.r-project.org'); library(patchwork)
## Loading required package: patchwork
## Warning: package 'patchwork' was built under R version 4.1.3
if (!require(hrbrthemes)) install.packages('hrbrthemes', repos='http://cran.us.r-project.org'); library(hrbrthemes)
## Loading required package: hrbrthemes
## Warning: package 'hrbrthemes' was built under R version 4.1.3
## NOTE: Either Arial Narrow or Roboto Condensed fonts are required to use these themes.
## Please use hrbrthemes::import_roboto_condensed() to install Roboto Condensed and
## if Arial Narrow is not on your system, please see https://bit.ly/arialnarrow
if (!require(igraph)) install.packages('igraph', repos='http://cran.us.r-project.org'); library(igraph)
## Loading required package: igraph
## Warning: package 'igraph' was built under R version 4.1.3
##
## Attaching package: 'igraph'
## The following objects are masked from 'package:dplyr':
##
## as_data_frame, groups, union
## The following objects are masked from 'package:purrr':
##
## compose, simplify
## The following object is masked from 'package:tidyr':
##
## crossing
## The following object is masked from 'package:tibble':
##
## as_data_frame
## The following objects are masked from 'package:stats':
##
## decompose, spectrum
## The following object is masked from 'package:base':
##
## union
if (!require(ggraph)) install.packages('ggraph', repos='http://cran.us.r-project.org'); library(ggraph)
## Loading required package: ggraph
## Warning: package 'ggraph' was built under R version 4.1.3
if (!require(colormap)) install.packages('colormap', repos='http://cran.us.r-project.org'); library(colormap)
## Loading required package: colormap
## Warning: package 'colormap' was built under R version 4.1.3
if (!require(ggplot2)) install.packages('ggplot2', repos='http://cran.us.r-project.org'); library(ggplot2)
if (!require(dplyr)) install.packages('dplyr', repos='http://cran.us.r-project.org'); library(dplyr)
if (!require(plotly)) install.packages('plotly', repos='http://cran.us.r-project.org'); library(plotly)
## Loading required package: plotly
## Warning: package 'plotly' was built under R version 4.1.3
##
## Attaching package: 'plotly'
## The following object is masked from 'package:igraph':
##
## groups
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
if (!require(quantmod)) install.packages('quantmod', repos='http://cran.us.r-project.org'); library(quantmod)
## Loading required package: quantmod
## Warning: package 'quantmod' was built under R version 4.1.3
## Loading required package: xts
## Warning: package 'xts' was built under R version 4.1.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.1.3
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
##
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
##
## first, last
## Loading required package: TTR
## Warning: package 'TTR' was built under R version 4.1.3
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
if (!require(tidygraph)) install.packages('tidygraph', repos='http://cran.us.r-project.org'); library(tidygraph)
## Loading required package: tidygraph
## Warning: package 'tidygraph' was built under R version 4.1.3
##
## Attaching package: 'tidygraph'
## The following object is masked from 'package:igraph':
##
## groups
## The following object is masked from 'package:stats':
##
## filter
1.- LINE CHART
# Crear data frame
vida <- data.frame(any=c(1900, 1910, 1920, 1930, 1940, 1950, 1960, 1970, 1980, 1990, 2000),
esp_home=c(46.3, 48.4, 53.6 ,58.1, 60.8, 65.6, 66.6, 67.1, 70, 71.8, 74),
esp_dona=c(48.3, 51.8, 54.6, 61.6, 65.2, 71.1, 73.1, 74.7, 77.4, 78.8, 80.1))
# Plot
p0 = ggplot() +
geom_line(data=vida, aes(x = any, y = esp_home, color = "blue")) +
geom_line(data=vida, aes(x = any, y = esp_dona, color = "red")) +
scale_color_manual(name = "Sexe", labels=c("Home", "Dona"), values = c("blue", "red")) +
theme_ipsum() +
xlab('Any') +
ylab('Esperança de vida en anys') +
ggtitle("Esperança de vida USA")
p0
## Warning in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)): font family not
## found in Windows font database
## Warning in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)): font family not
## found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)): font family not
## found in Windows font database
## Warning in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)): font family not
## found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
2.- ARC DIAGRAM
# A really simple edge list
airports <- data.frame(name=c("DFW", "ORD", "LAX", "DEN", "ATL"),
label=c("Dallas", "Chicago", "Los Angeles", "Denver", "Atlanta"))
links=data.frame(
source=c("DFW", "DFW", "DFW", "DFW", "ORD", "LAX", "DEN","ATL"),
target=c("ORD", "LAX", "DEN", "ATL", "DFW", "DFW", "DFW", "DFW"),
routes=c(20, 19, 20, 17, -20, -19, -18, -20),
color=c("blue", "blue", "blue", "blue", "red", "red", "red", "red")
)
# Make a cord diagram
net.tidy <- tbl_graph(nodes = airports, edges = links, directed = TRUE)
p3 <- ggraph(net.tidy, layout = "linear") +
geom_edge_arc(arrow = arrow(type = "closed", length = unit(3, 'mm')), aes(colour = color, width = abs(routes), label=abs(routes)),
alpha = 0.8, start_cap = circle(.1, unit = "native"), end_cap = circle(.1, unit = "native")) +
scale_edge_width(range = c(0.2, 2)) +
geom_node_text(aes(label = label), repel = FALSE) +
labs(edge_width = "Numero de rutas") +
theme_graph()+
theme(legend.position = "none") +
labs(caption = paste0('Vols amb origen i destí Dallas '))
# Make a cord diagram
p3
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
3.- OHLC CHART
getSymbols("GOOG",src='yahoo')
## [1] "GOOG"
df <- data.frame(Date=index(GOOG),coredata(GOOG))
df <- tail(df, 30)
fig <- df %>% plot_ly(x = ~Date, type="ohlc",
open = ~GOOG.Open, close = ~GOOG.Close,
high = ~GOOG.High, low = ~GOOG.Low)
fig <- fig %>% layout(title = "Cotització Google",
xaxis = list(title="Data", rangeslider = list(visible = F)),
yaxis = list(title="Cotització ($)", rangeslider = list(visible = F)))
fig